drm digital rights management java software development copyright electronic licensing object oriented development java tools license distribution software development copy protection java content databases